package com.example.novelweb.service;

import com.example.novelweb.common.BaseResponse;
import com.example.novelweb.model.dto.chapter.ChapterAddRequest;
import com.example.novelweb.model.dto.chapter.ChapterSaveRequest;
import com.example.novelweb.model.dto.chapter.ChapterSwitchRequest;
import com.example.novelweb.model.entity.Chapter;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.novelweb.model.vo.ChapterInfo;
import com.example.novelweb.model.vo.ChapterVO;

import java.util.List;

/**
* @author PERSON
* @description 针对表【chapter(小说章节)】的数据库操作Service
* @createDate 2025-02-09 01:41:52
*/
public interface ChapterService extends IService<Chapter> {

  BaseResponse<List<ChapterVO>> listAllByNovelId(Long novelId);

  BaseResponse<List<Chapter>> listMyNovel(Long novelId);

  BaseResponse<Chapter> getChapterById(Long chapterId);

  BaseResponse<List<ChapterInfo>> listReviewingChapter();

  BaseResponse<Long> create(ChapterAddRequest chapterAddRequest);


  BaseResponse<Boolean> save(ChapterSaveRequest chapterSaveRequest);

  BaseResponse<Boolean> switchStatus(ChapterSwitchRequest chapterSwitchRequest);

  BaseResponse<Boolean> deleteChapter(Long chapterId);



}
